//1、头文件作用:用来做结构体定义，函数声明，变量声明，包含其他头文件，定义宏替换。
//2、头文件为了防止冲突，会用#ifndef __HEAD_FILE_T_H__ #define __HEAD_FILE_T_H__...#endif或者用#pragma once
//3、头文件不要定义变量！如果定义了变量，多个.cpp文件包含了同一个头文件，会报变量重定义。

// #ifndef是预处理，表示如果没有定义__C_HEAD_FILE_H__，就#define __C_HEAD_FILE_H__定义__C_HEAD_FILE_H__。
// 同一个.c源文件再次调用次头文件时，由于已经定义了__C_HEAD_FILE_H__，不会在产生头文件的内容了。
// 也就是多次调用次头文件，源文件展开只会有一份头文件的内容。
#ifndef __C_HEAD_FILE_H__
#define __C_HEAD_FILE_H__
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

//结构体定义
struct employInfoDef
{
    int id;
    char name[10];
    short salary;
};

void function1(void);

//全局变量声明,全局变量的定义不要放到头文件中。编译时会出现多次定义变量问题。
extern int globalValc;

//宏替换定义。
#define MACRO_SUB(a, b) (a - b)

//函数声明。
void function1(void);
void function2(void);
void function3(void);
void function4(void);

#endif
